﻿using System.Collections.Generic;

namespace DBProvider.Providers
{
	public interface IVideoProvider
	{
		Video CreateVideo(Video theNewVideo, out string msg);
		bool UpdateVideo(Video theVideo);
		bool DeleteVideo(int videoID);
		Video GetVideo(int videoID);
		List<Video> GetVideoByCategory(int videoCategoryID);
		List<VideoCategory> GetAllVideoCategory();
		List<Video> GetVideoByUser(int userID);
		List<Video> GetVideos(int drugStoreID);
		List<Video> GetVideoExcludeUser(int userID, int drugStoreID);
		List<Video> GetVideoByUser(int userID, int pageIndex, int pageSize, out int totalRecords);
		List<Video> GetVideos(int pageIndex, int pageSize, out int totalRecords, int drugStoreID);
		List<Video> GetVideoExcludeUser(int userID, int drugStoreID, int pageIndex, int pageSize, out int totalRecords);
		List<Video> GetNewVideos(int count, int drugStoreID);

		List<RLT_VideoAndShareTo> GetVideoAndShareToByVideo(int videoID);
		void CreateVideoAndShareTo(List<RLT_VideoAndShareTo> lstVideoAndShareTo);
		void SaveVideoAndShareTo(int videoID, List<RLT_VideoAndShareTo> lstVideoAndShareTo);

		List<Video> GetNewVideos(int count, int drugStoreID, int userID);
	}
}
